/* The file is saved in UTF-8 codepage.
 * Check: «Stereotype», Section mark-§, Copyright-©, Alpha-α, Beta-β, Smile-☺
 */
package cz.pecinovsky.english.lootp.shapes;



////////////////////////////////////////////////////////////////////////////////
//%%+  +++++ End of ignored starting test - place for imports +++++

//%X+ xxxxx Start of the ovejumped text with declaration of the envelope xxxxx
/*******************************************************************************
 *<pre>
 * Previous:  No - this is a newly defined type
 * Following: No
 *
 * Project  112z - Introduction into design patterns
 *   + Introduction of this interface
 *
 * Project  113z - Inheritance of interfaces
 *   ~ The interfaci is defined as a child of the interface {@link IPaintable}
 *</pre>
 *
 * @author Rudolf PECINOVSKÝ
 * @version 6.03.2017 — 2010-11-08
 */
////////////////////////////////////////////////////////////////////////////////
//%X- ----- End of the ovejumped text with declaration of the envelope -----


/*******************************************************************************
 * Instances of interface {@code IResizeable} represents geometrical shapes
 * that can reveal and set their dimensions.
 * The size of a shape is defined as the size
 * of its circumscribe rectangle.
 *
 * @author Rudolf PECINOVSKÝ
 * @version 6.03.2017 — 2010-11-08
 */
//%I+ <113
//public interface IResizeable
//%I-
//%A+ >113
public interface IResizeable extends IPaintable
//%A-
{
//== CONSTANT CLASS ATTRIBUTES =================================================
//== VARIABLE CLASS ATTRIBUTES =================================================

    /***************************************************************************
     * Returns the object width.
     * The size of instance is defined as the size
     * of the circumscribe rectangle.
     *
     * @return  Object width
     */
//     @Override
    public int getWidth();


    /***************************************************************************
     * Returns the object height.
     * The size of instance is defined as the size
     * of the circumscribe rectangle.
     *
     * @return  Object height
     */
//     @Override
    public int getHeight();


    /***************************************************************************
     * Set dimensions of the object.
     * The size of instance is defined as the size
     * of the circumscribe rectangle.
     * The set dimensions must be non-negative,
     * the zero value is substituted by one.
     *
     * @param width    The newly set width;  width>=0
     * @param height   The newly set height; height>=0
     */
//     @Override
   public void setSize(int width, int height);



//== INHERITED METHODS =========================================================
//== EMBEDDED DATA TYPES =======================================================
}
